const obj = {
    install(Vue) {
        console.log("@@@install");
        console.dir(Vue);
        // 全局过滤器
        Vue.filter('mySlice', (value)=>{
            return value.slice(0,4);
        })
        
        // 全局自定义指令
        Vue.directive('fbind',{
            // 指令与元素成功绑定的时候
           bind(node, binding){
               node.value = binding.value
           },
           // 指令所在元素被插入页面时候调用
           inserted(node, binding){
               node.focus()
           },
           // 指令所在模更新的时候
           update(node, binding){
               node.value = binding.value
           }
       })

        // 定义混入
        Vue.mixin({
            data() {
                return {
                    x: 100,
                    y: 200
                }
            }
        })

        // Vue原型上加入方法
        Vue.prototype.demo = val => console.log('Hello ', val);
    }
}

export default obj